import { IntersectionType, OmitType, PartialType } from '@nestjs/swagger'
import { ListPaginationDto } from '@/shared/types/globalDto.dto'
import { Career } from '../entities/career.entity'

export class CreateCareerDto extends OmitType(PartialType(Career), ['careerId', 'createdAt', 'updatedAt']) {}

export class UpdateCareerDto extends CreateCareerDto {}

export class FindCareerDto extends PartialType(OmitType(Career, ['careerMaterial'])) {}

export class ListPageCareerDto extends IntersectionType(FindCareerDto, ListPaginationDto) {}

export class WebListPageCareerDto extends OmitType(ListPageCareerDto, ['visibleStatus']) {}

export class ListPaginationCareerVo {
  total: number
  list: Career[]
}
